home *** CD-ROM | disk | FTP | other *** search
-
-
-
- BBBBOOOOOOOOLLLL((((3333FFFF)))) BBBBOOOOOOOOLLLL((((3333FFFF))))
-
-
-
- NNNNAAAAMMMMEEEE
- bool: iand, kiand, and, iior, ior, or, jior, kior, inot, jnot, knot, not,
- iieor, jieor, kieor, ieor, xor, iishft, jishft, kishft, ishft, lshift,
- rshift, iishftc, jishftc, kishftc, ishftc, iibits, jibits, kibits, ibits,
- iibset, jibset, kibset, ibset, bitest, bjtest, bktest, btest, iibclr,
- jibclr, kibclr, ibclr, mvbits - FORTRAN bitwise boolean functions
-
- SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
- iiiinnnntttteeeeggggeeeerrrr iiii,,,, kkkk,,,, llll,,,, mmmm,,,, nnnn,,,, lllleeeennnn
- iiiinnnntttteeeeggggeeeerrrr****2222 iiiiiiii1111,,,, iiiiiiii2222,,,, iiiiiiii3333
- iiiinnnntttteeeeggggeeeerrrr****8888 kkkkkkkk1111,,,, kkkkkkkk2222,,,, kkkkkkkk3333
- llllooooggggiiiiccccaaaallll bbbb
- llllooooggggiiiiccccaaaallll****2222 cccc
- llllooooggggiiiiccccaaaallll****8888 cccccccc
-
- iiii ==== iiiiaaaannnndddd((((mmmm,,,, nnnn))))
- kkkkkkkk3333 ==== kkkkiiiiaaaannnndddd((((kkkkkkkk1111,,,, kkkkkkkk2222))))
- iiii ==== aaaannnndddd((((mmmm,,,, nnnn))))
-
- iiiiiiii3333 ==== iiiiiiiioooorrrr((((iiiiiiii1111,,,, iiiiiiii2222))))
- kkkkkkkk3333 ==== kkkkiiiioooorrrr((((kkkkkkkk1111,,,, kkkkkkkk2222))))
- iiii ==== iiiioooorrrr((((mmmm,,,, nnnn))))
- iiii ==== oooorrrr((((mmmm,,,, nnnn))))
- iiii ==== jjjjiiiioooorrrr((((mmmm,,,, nnnn))))
-
- iiiiiiii3333 ==== iiiinnnnooootttt((((iiiiiiii1111))))
- kkkkkkkk3333 ==== kkkknnnnooootttt((((kkkkkkkk1111))))
- iiii ==== jjjjnnnnooootttt((((mmmm))))
- iiii ==== nnnnooootttt((((mmmm))))
-
- iiiiiiii3333 ==== iiiiiiiieeeeoooorrrr((((iiiiiiii1111,,,, iiiiiiii2222))))
- kkkkkkkk3333 ==== kkkkiiiieeeeoooorrrr((((kkkkkkkk1111,,,, kkkkkkkk2222))))
- iiii ==== jjjjiiiieeeeoooorrrr((((mmmm,,,, nnnn))))
- iiii ==== iiiieeeeoooorrrr((((mmmm,,,, nnnn))))
- iiii ==== xxxxoooorrrr((((mmmm,,,, nnnn))))
-
- iiiiiiii3333 ==== iiiiiiiisssshhhhfffftttt((((iiiiiiii1111,,,, iiiiiiii2222))))
- kkkkkkkk3333 ==== kkkkiiiisssshhhhfffftttt((((kkkkkkkk1111,,,, kkkkkkkk2222))))
- iiii ==== jjjjiiiisssshhhhfffftttt((((mmmm,,,, kkkk))))
- iiii ==== iiiisssshhhhfffftttt((((mmmm,,,, kkkk))))
- iiii ==== llllsssshhhhiiiifffftttt((((mmmm,,,, kkkk))))
- iiii ==== rrrrsssshhhhiiiifffftttt((((mmmm,,,, kkkk))))
-
- iiiiiiii3333 ==== iiiiiiiisssshhhhffffttttcccc((((iiiiiiii1111,,,, iiiiiiii2222,,,, lllleeeennnn))))
- kkkkkkkk3333 ==== kkkkiiiisssshhhhffffttttcccc((((kkkkkkkk1111,,,, kkkkkkkk2222,,,, lllleeeennnn))))
- iiii ==== jjjjiiiisssshhhhffffttttcccc((((mmmm,,,, kkkk,,,, lllleeeennnn))))
- iiii ==== iiiisssshhhhffffttttcccc((((mmmm,,,, kkkk,,,, lllleeeennnn))))
-
- iiiiiiii3333 ==== iiiiiiiibbbbiiiittttssss((((iiiiiiii1111,,,, iiiiiiii2222,,,, lllleeeennnn))))
- kkkkkkkk3333 ==== kkkkiiiibbbbiiiittttssss((((kkkkkkkk1111,,,, kkkkkkkk2222,,,, lllleeeennnn))))
- iiii ==== jjjjiiiibbbbiiiittttssss((((mmmm,,,, kkkk,,,, lllleeeennnn))))
- iiii ==== iiiibbbbiiiittttssss((((mmmm,,,, kkkk,,,, lllleeeennnn))))
-
-
-
- PPPPaaaaggggeeee 1111
-
-
-
-
-
-
- BBBBOOOOOOOOLLLL((((3333FFFF)))) BBBBOOOOOOOOLLLL((((3333FFFF))))
-
-
-
- iiiiiiii3333 ==== iiiiiiiibbbbsssseeeetttt((((iiiiiiii1111,,,, iiiiiiii2222))))
- kkkkkkkk3333 ==== kkkkiiiibbbbsssseeeetttt((((kkkkkkkk1111,,,, kkkkkkkk2222))))
- iiii ==== jjjjiiiibbbbsssseeeetttt((((nnnn,,,, kkkk))))
- iiii ==== iiiibbbbsssseeeetttt((((nnnn,,,, kkkk))))
-
- cccc ==== bbbbiiiitttteeeesssstttt((((iiiiiiii1111,,,, iiiiiiii2222))))
- cccccccc ==== bbbbkkkktttteeeesssstttt((((kkkkkkkk1111,,,, kkkkkkkk2222))))
- bbbb ==== bbbbjjjjtttteeeesssstttt((((nnnn,,,, kkkk))))
- bbbb ==== bbbbtttteeeesssstttt((((nnnn,,,, kkkk))))
-
- iiiiiiii3333 ==== iiiiiiiibbbbccccllllrrrr((((iiiiiiii1111,,,, iiiiiiii2222))))
- kkkkkkkk3333 ==== kkkkiiiibbbbccccllllrrrr((((kkkkkkkk1111,,,, kkkkkkkk2222))))
- iiii ==== jjjjiiiibbbbccccllllrrrr((((nnnn,,,, kkkk))))
- iiii ==== iiiibbbbccccllllrrrr((((nnnn,,,, kkkk))))
-
- ccccaaaallllllll mmmmvvvvbbbbiiiittttssss((((mmmm,,,, kkkk,,,, lllleeeennnn,,,, nnnn,,,, llll))))
-
- DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
- _b_o_o_l is the general name for the bit field manipulation intrinsic
- functions and subroutines from the FORTRAN Military Standard (MIL-STD-
- 1753).
-
- _a_n_d, _o_r and _x_o_r return the value of the binary operations on their
- arguments. _n_o_t is a unary operator returning the one's complement of its
- argument. _i_o_r, _i_a_n_d, _n_o_t, _i_e_o_r - return the same results as _a_n_d, _o_r,
- _n_o_t, and _x_o_r.
-
- _l_s_h_i_f_t and _r_s_h_i_f_t return the value of the first argument shifted left or
- right, respectively, the number of times specified by the second
- (integer) argument. _l_s_h_i_f_t and _r_s_h_i_f_t are implemented as logical shifts,
- in other words, zeros are shifted in.
-
- _i_s_h_f_t, _i_s_h_f_t_c - mmmm specifies the integer to be shifted. kkkk specifies the
- shift count. kkkk > 0 indicates a left shift. kkkk = 0 indicates no shift. kkkk
- < 0 indicates a right shift. In _i_s_h_f_t, zeros are shifted in. In _i_s_h_f_t_c,
- the rightmost lllleeeennnn bits are shifted circularly kkkk bits. If kkkk is greater
- than the machine word-size, _i_s_h_f_t_c will not shift.
-
- _i_a_n_d, _i_o_r, _n_o_t, _i_e_o_r, and _i_s_h_f_t accept either integer*2 or integer*4
- arguments and the result is the same type. When one of these intrinsics
- is specified as an _a_r_g_u_m_e_n_t in a subroutine call or function reference,
- the compiler supplies either an integer*2 or integer*4 function depending
- on the ----iiii2222 command line option.
-
- Bit fields are numbered from right to left and the rightmost bit position
- is zero. The length of the lllleeeennnn field must be greater than zero.
-
- _i_b_i_t_s - extract a subfield of lllleeeennnn bits from mmmm starting with bit position
- kkkk and extending left for lllleeeennnn bits. The result field is right justified
- and the remaining bits are set to zero.
-
-
-
-
-
- PPPPaaaaggggeeee 2222
-
-
-
-
-
-
- BBBBOOOOOOOOLLLL((((3333FFFF)))) BBBBOOOOOOOOLLLL((((3333FFFF))))
-
-
-
- _b_t_e_s_t - The kkkkth bit of argument nnnn is tested. The value of the function
- is ....TTTTRRRRUUUUEEEE.... if the bit is a 1 and ....FFFFAAAALLLLSSSSEEEE.... if the bit is 0.
-
- _i_b_s_e_t - the result is the value of nnnn with the kkkkth bit set to 1.
-
- _i_b_c_l_r - the result is the value of nnnn with the kkkkth bit set to 0.
-
- _m_v_b_i_t_s - lllleeeennnn bits are moved beginning at position kkkk of argument mmmm to
- position llll of argument nnnn.
-
-
- NNNNOOOOTTTTEEEE
- The rightmost bit is bit position 0.
-
- WWWWAAAARRRRNNNNIIIINNNNGGGG
- If the user specifies a shift count larger than or equal to the machine
- word size the result of the shift operation is undefined. Similarly, bit
- operations which involve bit positions less than 0 or greater than the
- machine word size will have indeterminate results.
-
- Since intrinsic functions promote their arguments to the largest type in
- the argument list, unexpected sign extensions may occur. For example:
-
- iiiinnnntttteeeeggggeeeerrrr ****1111 mmmm,,,,kkkk,,,,iiii,,,,jjjj
- mmmm====----1111
- kkkk====1111
- iiii====rrrrsssshhhhiiiifffftttt((((mmmm,,,,kkkk))))
- jjjj====rrrrsssshhhhiiiifffftttt((((mmmm,,,,1111))))
-
- The value of i will be 127, a 0 is shifted into bit position 7 of the
- byte. However the value of j will be -1, both arguments are converted to
- integer, sign extending m, a shift is performed, shifting a 0 into bit
- position 31. The result is truncated to 8 bits and stored in j.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- PPPPaaaaggggeeee 3333
-
-
-
-